# 包 package
# 包也是一个模块
# 当我们模块中的代码过多时，或者一个模块需要被分解为多个模块时，这个时候就需要包
# 普通的模块就是一个py文件，而包是一个文件夹
# 包中必须要有一个__init__.py这个文件，
# import hello
from hello import a, b

print(a.c)
print(b.d)

# __pycache__ 是模块的一个缓存文件
# py代码在执行前，需要被解析器先转换成机器码，然后在执行
# 所以我们在使用模块(包)时，也需要先将模块的代码转换成机器码，然后在由计算机执行
# 而为了提高程序的运行性能，Python会在编译过一次以后，将代码保存到一个缓存文件中
# 这样在下次加载这个模块(包)时,就可以不用重新编译而是直接加载缓存中编译好的代码即可
